clang tidy optimizes to use parameter passing by const reference. (#209)
authortsteven4 <tsteven4@users.noreply.github.com>
Tue, 26 Jun 2018 22:33:26 +0000 (16:33 -0600)
committerGitHub <noreply@github.com>
Tue, 26 Jun 2018 22:33:26 +0000 (16:33 -0600)
RUN_CLANG_TIDY_FLAGS="-header-filter=.*\\\.h -checks=-*,performance-unnecessary-value-param -fix

The suggestion "parameter '*' is passed by value and only copied once; consider moving
it to avoid unnecessary copies" was not accepted.

The suggestion "the const qualified parameter '*' is copied for each invocation;
consider making it a reference" was accepted.

The suggestion "the parameter '*' is copied for each invocation but only used as a const
reference; consider making it a const reference" was accepted.

14 files changed:
csv_util.cc
csv_util.h
defs.h
gbfile.cc
gbfile.h
gdb.cc
gpx.cc
gtrnctr.cc
maggeo.cc
mynav.cc
pcx.cc
src/core/logging.h
trackfilter.cc
waypt.cc

index b5420d8e852ec895b7ee37b0b2cf00f5a41552e2..e9704ce6cd067e3aad4b4f4c89c6f18b17abf3b6 100644 (file)
@@ -958,7 +958,7 @@ writehms(const char* format, const gpsbabel::DateTime& t, int gmt)
 
 static
 long
-time_to_yyyymmdd(QDateTime t)
+time_to_yyyymmdd(const QDateTime& t)
 {
   QDate d = t.date();
   return d.year() * 10000 + d.month() * 100 + d.day();
index ea4fbc33b6c642e6efb58b2095845d2adeafa74c..aeed5ce2ece120c746ac93027daec0fc26ec96ba 100644 (file)
@@ -40,7 +40,7 @@ csv_lineparse(const char* stringstart, const char* delimited_by, const char* enc
 void
 human_to_dec(const char* instr, double* outlat, double* outlon, int which);
 inline void
-human_to_dec(const QString instr, double* outlat, double* outlon, int which) {
+human_to_dec(const QString& instr, double* outlat, double* outlon, int which) {
   human_to_dec(CSTR(instr), outlat, outlon, which);
 }
 
diff --git a/defs.h b/defs.h
index de964b2e6e2283b742210dcdca0a8fd7ea89e8ff..deb8011ef215c7c5043bafbd05ae2a74c4bb2e9b 100644 (file)
--- a/defs.h
+++ b/defs.h
@@ -341,17 +341,17 @@ class UrlLink
 {
 public:
   UrlLink() { }
-  UrlLink(const QString url) :
+  UrlLink(const QString& url) :
     url_(url)
   { }
   UrlLink(const char* url) :
     url_(url)
   { }
-  UrlLink(const QString url, const QString url_link_text) :
+  UrlLink(const QString& url, const QString& url_link_text) :
     url_(url),
     url_link_text_(url_link_text)
   { }
-  UrlLink(const QString url, const QString url_link_text, const QString url_link_type) :
+  UrlLink(const QString& url, const QString& url_link_text, const QString& url_link_type) :
     url_(url),
     url_link_text_(url_link_text),
     url_link_type_(url_link_type)
@@ -547,7 +547,7 @@ public:
   bool HasUrlLink() const;
   const UrlLink& GetUrlLink() const;
   const QList<UrlLink> GetUrlLinks() const;
-  void AddUrlLink(const UrlLink l);
+  void AddUrlLink(const UrlLink& l);
   QString CreationTimeXML() const;
   gpsbabel::DateTime  GetCreationTime() const;
   void SetCreationTime(gpsbabel::DateTime t);
index 4cad0fbc58bfe58edd7a8a41629e1ef24148bf54..83efde16e2a8b30d7295646c1f9421aed6d21b1b 100644 (file)
--- a/gbfile.cc
+++ b/gbfile.cc
@@ -501,7 +501,7 @@ memapi_error(gbfile* self)
  */
 
 gbfile*
-gbfopen(const QString filename, const char* mode, const char* module)
+gbfopen(const QString& filename, const char* mode, const char* module)
 {
   gbfile* file;
   const char* m;
@@ -609,7 +609,7 @@ gbfopen(const QString filename, const char* mode, const char* module)
  */
 
 gbfile*
-gbfopen_be(const QString filename, const char* mode, const char* module)
+gbfopen_be(const QString& filename, const char* mode, const char* module)
 {
   gbfile* result;
 
index 1c2c6e848b2c5760b537763cfa7a4bc3e08ee60b..8979ee5ef4f77873bf7a7112dc5dc7e439648810 100644 (file)
--- a/gbfile.h
+++ b/gbfile.h
@@ -86,8 +86,8 @@ typedef struct gbfile_s {
 } gbfile_t;
 
 
-gbfile* gbfopen(const QString filename, const char* mode, const char* module);
-gbfile* gbfopen_be(const QString filename, const char* mode, const char* module);
+gbfile* gbfopen(const QString& filename, const char* mode, const char* module);
+gbfile* gbfopen_be(const QString& filename, const char* mode, const char* module);
 #define gbfopen_le gbfopen
 void gbfclose(gbfile* file);
 
diff --git a/gdb.cc b/gdb.cc
index 8709ea011df3e42ad10439915046b821ddabddf2..d9aebea23432228979505271e71795f58221ade5 100644 (file)
--- a/gdb.cc
+++ b/gdb.cc
@@ -361,7 +361,7 @@ gdb_add_route_waypt(route_head* rte, Waypoint* ref, const int wpt_class)
 /*******************************************************************************/
 /* TOOLS AND MACROS FOR THE WRITER */
 /*-----------------------------------------------------------------------------*/
-static void FWRITE_CSTR(QString a)  {
+static void FWRITE_CSTR(const QString& a)  {
   if (a.isEmpty()) {
     gbfputc(0, fout);
     return;
diff --git a/gpx.cc b/gpx.cc
index 5b6b7f3abe65e4fd69a1234a71e5c0751a49e553..b6d0520029d83ea662f8bf00ce4638040f06d671 100644 (file)
--- a/gpx.cc
+++ b/gpx.cc
@@ -527,7 +527,7 @@ tag_gs_cache(const QXmlStreamAttributes& attr)
 }
 
 static void
-start_something_else(const QString el, const QXmlStreamAttributes& attr)
+start_something_else(const QString& el, const QXmlStreamAttributes& attr)
 {
   char** avcp;
   int attr_count;
@@ -1652,7 +1652,7 @@ gpx_write_common_extensions(const Waypoint* waypointp, const gpx_point_type poin
 }
 
 static void
-gpx_write_common_description(const Waypoint* waypointp, QString oname)
+gpx_write_common_description(const Waypoint* waypointp, const QString& oname)
 {
   writer->writeOptionalTextElement(QStringLiteral("name"), oname);
 
index 45b5f7f169aedb47b367e30cfc9190c21c4e3c62..26434837041a0b39d007c2d3141698e50200f275 100644 (file)
@@ -234,7 +234,7 @@ gtc_write_xml(int indent, const char* fmt, ...)
 }
 
 static void
-gtc_write_xml(int indent, const QString s)
+gtc_write_xml(int indent, const QString& s)
 {
   if (indent < 0) {
     gtc_indent_level--;
index 980c6bd7ac64f1ab154968cee70fb12087df674e..6b10a43bd7987805fb4177ccfd02288473581fe3 100644 (file)
--- a/maggeo.cc
+++ b/maggeo.cc
@@ -176,7 +176,7 @@ maggeo_read()
 
 static
 QString
-maggeo_fmtdate(QDateTime dt)
+maggeo_fmtdate(const QDateTime& dt)
 {
   QDate date = dt.date();
   int y = date.year() - 1900;
index 6ff516365da4eb72c4e980df5d4ebe7b3131fdfe..938cdfad8f3a2d75ddc59fc3854fc7cb6b98a6b4 100644 (file)
--- a/mynav.cc
+++ b/mynav.cc
@@ -52,7 +52,7 @@ static gbfile* fin;
 //           local helper functions
 //***************************************************************************
 static void
-mynav_rd_line(QString line)
+mynav_rd_line(const QString& line)
 {
   QStringList fields = line.split("|");
 
diff --git a/pcx.cc b/pcx.cc
index 9b50861414404c2f3074f5c2049e37d5c0d2d471..4ead2f5ec5e2bf3321c97aebd820efd61f1d67a4 100644 (file)
--- a/pcx.cc
+++ b/pcx.cc
@@ -70,13 +70,13 @@ static void wr_deinit() {
 
 // Find the first token in string |in| when there may be leading whitespace.
 // These files have weird mixtures of spaces and tabs.
-static QString FirstTokenAt(QString in, int index) {
+static QString FirstTokenAt(const QString& in, int index) {
   static const QRegExp sep("\\s+");
   return in.mid(index, -1).section(sep, 0, 0, QString::SectionSkipEmpty);
 }
 
 // Centralize Date/Time parsing between Waypoint and Trackpoint readers.
-static void  SetWaypointTime(Waypoint* wpt, QString date, QString time) {
+static void  SetWaypointTime(Waypoint* wpt, const QString& date, const QString& time) {
   QDate qdate = QDate::fromString(date, "dd-MMM-yy");
   QTime qtime = QTime::fromString(time, "hh:mm:ss");
   if (qdate.isValid() && qtime.isValid()) {
index af0a7ed0c8f615ec04f08a836594f5fa10da49ea..b8572de99fe5adfdce76ac78c8b266bb2e4c48fa 100644 (file)
@@ -52,7 +52,7 @@ class Warning {
   inline Warning& operator << (float d) { fileStream_ << d; return optionalSpace(); }
   inline Warning& operator << (double d) { fileStream_ << d; return optionalSpace(); }
   inline Warning& operator << (const char* d) { fileStream_ << QString::fromUtf8(d); return optionalSpace(); }
-  inline Warning& operator << (QString d) { fileStream_ << '\"' << d << '\"'; return optionalSpace(); }
+  inline Warning& operator << (const QString& d) { fileStream_ << '\"' << d << '\"'; return optionalSpace(); }
   inline Warning& operator << (const void* d) { fileStream_ << '\"' << d << '\"'; return optionalSpace(); }
 
   inline Warning& optionalSpace() {
index e872958673653f9118f5bdbf6aadc1a994d140ed..5035a3e215bf764a5f6c72866685abfc5663d6ab 100644 (file)
@@ -394,7 +394,7 @@ trackfilter_minpoint_list_cb(const route_head* track)
 *******************************************************************************/
 
 static void
-trackfilter_split_init_rte_name(route_head* track, const QDateTime dt)
+trackfilter_split_init_rte_name(route_head* track, const QDateTime& dt)
 {
   QString datetimestring;
 
index 7137784f28952c00d8dd05cdc4861556595ea0a4..0983620c65df8180e696dc5ffa36987479689404 100644 (file)
--- a/waypt.cc
+++ b/waypt.cc
@@ -707,7 +707,7 @@ Waypoint::GetUrlLinks() const
 }
 
 void
-Waypoint::AddUrlLink(const UrlLink l)
+Waypoint::AddUrlLink(const UrlLink& l)
 {
   url_link_list_.push_back(l);
 }